package com.example.day3.stream;

import java.util.stream.IntStream;

/**
 * 查找
 */
public class C07FindTest {
    public static void main(String[] args) {
        IntStream stream = IntStream.of(1, 2, 3, 4, 5, 6);

        // 1.findFirst 找到第一个元素
        // 需求:找到流中的第一个偶数
        // 因为findFirst()返回的是一个Optional对象orElse()的作用是如果找到了就返回找到的元素否则就返回orElse中指定的值
//        System.out.println(stream.filter(x -> (x & 1) == 0).findFirst().orElse(-1));

        // Optional第二种用法,ifPresent,如果找到了就执行,反之不会执行
//        stream.filter(x -> (x & 1) == 0).findFirst().ifPresent(System.out::println);

        // 2.findAny 找到任意一个元素
        stream.filter(x -> (x & 1) == 0).findAny().ifPresent(System.out::println);
    }
}
